/**
 * Copyright (c) Huawei Technologies Co., Ltd. 1987-2021. All rights reserved.
*/

package com.gitee.fufu669.utils.vo;

import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

// 注解
@ApiModel
// 注解
@Data
// 注解
@NoArgsConstructor
// 注解
@AllArgsConstructor
/**
 * TODO
*/
public class SwaggerApiDocsVo implements Serializable {

    // 赋值
    private static final long serialVersionUID = 1L;

    // 定义
    String basePath;

    // 定义
    Map<String, Object> definitions;

    // 定义
    String host;

    // 定义
    Info info;

    // 定义
    Map<String, Object> paths;

    // 定义
    String swagger;

    // 定义
    List<Tag> tags;

    // 注解
    @ApiModel
    // 注解
    @Data
    // 注解
    @NoArgsConstructor
    // 注解
    @AllArgsConstructor
    /**
     * TODO
    */
    public class Info implements Serializable {

        // 赋值
        private static final long serialVersionUID = 1L;

        // 定义
        Map<String, Object> contact;

        // 定义
        String description;

        // 定义
        Map<String, Object> license;

        // 定义
        String termsOfService;

        // 定义
        String title;

        // 定义
        String version;

    }

    // 注解
    @ApiModel
    // 注解
    @Data
    // 注解
    @NoArgsConstructor
    // 注解
    @AllArgsConstructor
    /**
     * TODO
    */
    public class Tag implements Serializable {

        // 赋值
        private static final long serialVersionUID = 1L;

        // 定义
        String name;

        // 定义
        String description;

    }
}
